package sv.com.renacempleo.web.util;

import sv.com.renacempleo.dao.BaseDao;
import sv.com.renacempleo.dao.ciiu.ActividadesRegistroContribuyenteDao;
import sv.com.renacempleo.dao.ciiu.CIIU_01Dao;
import sv.com.renacempleo.dao.ciiu.CIIU_02Dao;
import sv.com.renacempleo.dao.ciiu.CIIU_03Dao;
import sv.com.renacempleo.dao.ciiu.CIIU_04Dao;
import sv.com.renacempleo.dao.ciuo.CIUO_01Dao;
import sv.com.renacempleo.dao.ciuo.CIUO_02Dao;
import sv.com.renacempleo.dao.ciuo.CIUO_03Dao;
import sv.com.renacempleo.dao.ciuo.CIUO_04Dao;
import sv.com.renacempleo.dao.ciuo.OcupacionesDao;
import sv.com.renacempleo.dao.ctg.CtgCatalogoDao;
import sv.com.renacempleo.dao.ctg.CtgColoniaDao;
import sv.com.renacempleo.dao.ctg.CtgDepartamentoDao;
import sv.com.renacempleo.dao.ctg.CtgDetalleAreasConocimientosDao;
import sv.com.renacempleo.dao.ctg.CtgDetalleHabilidadesDao;
import sv.com.renacempleo.dao.ctg.CtgDocumentosDao;
import sv.com.renacempleo.dao.ctg.CtgEmpleadoDao;
import sv.com.renacempleo.dao.ctg.CtgMunicipioDao;
import sv.com.renacempleo.dao.ctg.CtgOficinasDao;
import sv.com.renacempleo.dao.red.RedDemandanteDao;
import sv.com.renacempleo.dao.red.RedEmpresaSucursalesDao;
import sv.com.renacempleo.dao.red.RedEmpresasContactosDao;
import sv.com.renacempleo.dao.red.RedEmpresasDao;
import sv.com.renacempleo.dao.red.RedFormacionDemandanteDao;
import sv.com.renacempleo.dao.red.RedObservacionesDemandanteDao;
import sv.com.renacempleo.dao.red.RedOfertaDao;
import sv.com.renacempleo.dao.sgd.SgdUsuarioDao;
import sv.com.renacempleo.dso.red.RedEmpresasService;
import sv.com.renacempleo.dso.red.RedOfertaService;
import sv.com.renacempleo.dso.sgd.SgdUsuarioService;

public class DBContext {

	public static BaseDao getBaseDao(){
		return (BaseDao) WebUtilidades.getApplicationDao(WebUtilidades.BASE_DAO_KEY);
	}
	
	public static SgdUsuarioDao getSgdUsuarioDao(){
		return (SgdUsuarioDao) WebUtilidades.getApplicationDao(WebUtilidades.SGD_USUARIO_DAO_KEY);
	}
	
	/**DAO's CATALOGOS**/
	
	public static CtgCatalogoDao getCtgCatalogoDao(){
		return (CtgCatalogoDao) WebUtilidades.getApplicationDao(WebUtilidades.CTG_CATALOGO_DAO_KEY);
	}
	
	public static CtgColoniaDao getCtgColoniaDao(){
		return (CtgColoniaDao) WebUtilidades.getApplicationDao(WebUtilidades.CTG_COLONIA_DAO_KEY);
	}
	
	public static CtgMunicipioDao getCtgMunicipioDao(){
		return (CtgMunicipioDao) WebUtilidades.getApplicationDao(WebUtilidades.CTG_MUNICIPIO_DAO_KEY);
	}
	
	public static CtgDepartamentoDao getCtgDepartamentoDao(){
		return (CtgDepartamentoDao) WebUtilidades.getApplicationDao(WebUtilidades.CTG_DEPARTAMENTO_DAO_KEY);
	}
	
	public static CtgDetalleAreasConocimientosDao getCtgDetalleAreasConocimientosDao(){
		return (CtgDetalleAreasConocimientosDao) WebUtilidades.getApplicationDao(WebUtilidades.CTG_DETALLE_AREA_CONOCIMIENTO_DAO_KEY); 
	}
	
	public static CtgDetalleHabilidadesDao getCtgDetalleHabilidadesDao(){
		return (CtgDetalleHabilidadesDao) WebUtilidades.getApplicationDao(WebUtilidades.CTG_DETALLE_HABILIDADES_DAO_KEY);
	}
	
	public static CtgOficinasDao getCtgOficinasDao(){
		return (CtgOficinasDao) WebUtilidades.getApplicationDao(WebUtilidades.CTG_OFICINAS_DAO_KEY);
	}
	
	public static CtgDocumentosDao getCtgDocumentosDao(){
		return (CtgDocumentosDao) WebUtilidades.getApplicationDao(WebUtilidades.CTG_DOCUMENTOS_DAO_KEY);
	}
	
	public static CtgEmpleadoDao getCtgEmpleadoDao(){
		return (CtgEmpleadoDao) WebUtilidades.getApplicationDao(WebUtilidades.CTG_EMPLEADO_DAO_KEY);
	}

	/**DAO's DEMANDANTES**/
	
	public static RedDemandanteDao getRedDemandanteDao(){
		return (RedDemandanteDao) WebUtilidades.getApplicationDao(WebUtilidades.RED_DEMANDANTE_DAO_KEY);
	}
	
	public static RedFormacionDemandanteDao getRedFormacionDemandanteDao(){
		return (RedFormacionDemandanteDao) WebUtilidades.getApplicationDao(WebUtilidades.RED_FORMACION_DEMANDANTE_DAO_KEY);
	}
	
	public static RedObservacionesDemandanteDao getRedObservacionesDemandanteDao(){
		return (RedObservacionesDemandanteDao) WebUtilidades.getApplicationDao(WebUtilidades.RED_OBSERVACIONES_DEMANDANTE_DAO_KEY);
	}
	
	/**DAO's EMPRESAS**/
	
	public static RedEmpresasDao getRedEmpresasDao(){
		return (RedEmpresasDao) WebUtilidades.getApplicationDao(WebUtilidades.RED_EMPRESAS_DAO_KEY);
	}
	
	public static RedEmpresaSucursalesDao getRedEmpresaSucursalesDao(){
		return (RedEmpresaSucursalesDao) WebUtilidades.getApplicationDao(WebUtilidades.RED_EMPRESA_SUCURSALES_DAO_KEY);
	}
	
	public static RedEmpresasContactosDao getRedEmpresasContactosDao(){
		return (RedEmpresasContactosDao) WebUtilidades.getApplicationDao(WebUtilidades.RED_EMPRESA_CONTACTO_DAO_KEY);
	}
	
	/**DAO's CIIU CIUO**/
	
	public static CIIU_01Dao getCiiu_01Dao(){
		return (CIIU_01Dao) WebUtilidades.getApplicationDao(WebUtilidades.CIIU01_DAO_KEY);
	}
	
	public static CIIU_02Dao getCiiu_02Dao(){
		return (CIIU_02Dao) WebUtilidades.getApplicationDao(WebUtilidades.CIIU02_DAO_KEY);
	}
	
	public static CIIU_03Dao getCiiu_03Dao(){
		return (CIIU_03Dao) WebUtilidades.getApplicationDao(WebUtilidades.CIIU03_DAO_KEY);
	}
	
	public static CIIU_04Dao getCiiu_04Dao(){
		return (CIIU_04Dao) WebUtilidades.getApplicationDao(WebUtilidades.CIIU04_DAO_KEY);
	}
	
	public static ActividadesRegistroContribuyenteDao getActividadesRegistroContribuyenteDao(){
		return (ActividadesRegistroContribuyenteDao) WebUtilidades.getApplicationDao(WebUtilidades.ACTIVIDADES_REGISTRO_CONTRIBUYENTE_DAO_KEY);
	}
	
	public static CIUO_01Dao getCiuo_01Dao(){
		return (CIUO_01Dao) WebUtilidades.getApplicationDao(WebUtilidades.CIUO01_DAO_KEY);
	}
	
	public static CIUO_02Dao getCiuo_02Dao(){
		return (CIUO_02Dao) WebUtilidades.getApplicationDao(WebUtilidades.CIUO02_DAO_KEY);
	}

	public static CIUO_03Dao getCiuo_03Dao(){
		return (CIUO_03Dao) WebUtilidades.getApplicationDao(WebUtilidades.CIUO03_DAO_KEY);
	}

	public static CIUO_04Dao getCiuo_04Dao(){
		return (CIUO_04Dao) WebUtilidades.getApplicationDao(WebUtilidades.CIUO04_DAO_KEY);
	}
	
	public static OcupacionesDao getOcupacionesDao(){
		return (OcupacionesDao) WebUtilidades.getApplicationDao(WebUtilidades.OCUPACIONES_DAO_KEY);
	}
	
	public static RedOfertaDao getRedOfertaDao(){
		return (RedOfertaDao) WebUtilidades.getApplicationDao(WebUtilidades.RED_OFERTA_DAO_KEY);
	}
	
	/**SERVICES**/
	
	public static RedEmpresasService getRedEmpresasService(){
		return (RedEmpresasService) WebUtilidades.getApplicationService(WebUtilidades.RED_EMPRESAS_SERVICE_KEY);
	}
	
	public static SgdUsuarioService getSgdUsuarioService(){
		return (SgdUsuarioService) WebUtilidades.getApplicationService(WebUtilidades.SGD_USUARIO_SERVICE_KEY);
	}
	
	public static RedOfertaService getRedOfertaService(){
		return (RedOfertaService) WebUtilidades.getApplicationService(WebUtilidades.RED_OFERTA_SERIVICE_KEY);
	}
}
